<?php
class PM_s
{

    public static function __index( $room_id , $user_id , $db_connect ){
        //获取房间信息
        $room_info = PHZ_Room::__getRoomInfo_byID( $room_id , $db_connect );
        $is_start  = 0;//默认当前算一个人
        foreach ( $room_info as $key => $value ){
            if( strstr( $key , '_start' ) != false && $value == 1 ){
                $is_start++;
            }
        }
        if( $is_start >= 3 ){return true;}//已经存在准备好的3个人了，不允许重复通知
        //获取该玩家在当前房间内的第几个位置上
        $user_index = PHZ_User::__get_user_Room_Index( $room_info , $user_id );
        //更新玩家准备状态
        $cols = array();
        $cols['p'. $user_index .'_start'] = 1;
        $db_connect->update('tt_room')->cols( $cols )->where('room_id=' . $room_id )->query();
        //给所有人下发准备通知
        $temp = array();
        $temp['pl']          = 23;//准备通知
        PHZ_Log::__send_user_log( $room_info , $user_id , $temp  , $db_connect );
        //是否所有人都已经准备好了？全部人都准备好了；进行新的一局开局操作
        $room_info = PHZ_Room::__getRoomInfo_byID( $room_id , $db_connect );//重新获取房间信息
        $is_start  = 0;//默认当前算一个人
        foreach ( $room_info as $key => $value ){
            if( strstr( $key , '_start' ) != false && $value == 1 ){
                $is_start++;
            }
        }
        if( $is_start >= 3 ){//当前3人房，3个人就可以开始游戏了
            //房间信息初始化，更新局数
            $cols = array();
            $cols['room_js']     = $room_info['room_js'] + 1;
            $cols['scor_status'] = 0;//本局结算状态清除
            $db_connect->update('tt_room')->cols( $cols )->where('room_id=' . $room_id )->query();
            //下发房间初始化通知
            $temp = array();
            $temp['pl']           = 24;//房间初始化通知
            $room_info['room_js'] = $cols['room_js'];//已经属于下一个房间的通知了
            PHZ_Log::__send_user_log( $room_info , $user_id , $temp  , $db_connect );
            //开始下一局开始操作
            PHZ_Room::__J_Begin( $room_id , $cols['room_js']  , $db_connect );
            //给用户下发最新息数情况信息
            PM_d::__index( $room_id , $db_connect );
        }
    }

}